A directed graph (“digraph”) is an abstract data structure that is often used by social networks to represent relationships between various entities, e.g., users or photographs, etc. A typical directed graph is constituted by more than one node and at least one edge (e.g., a line between nodes). By using a directed graph data structure, social networks can effectively identify relationships (e.g., represented by edges) among multiple social network users or other entities (e.g., represented by nodes).
Some analyses of social network data can require performing a specified action for a large set of the nodes in the directed graph. This analysis (“superstep”) may consume a significant amount of computing resources, e.g., in cases with a large number of nodes. The supersteps may need to be repeated to generate meaningful data and so traditional techniques can quickly run out of all available computing resources.
During peak hours (e.g., with high network traffic), high demands of computing resources caused by these analyses can result in system failures, malfunctions, and/or suspension of online services.